#include<iostream>
using namespace std;

class Person
{
public:
	Person(string name)
		:_name(name)
	{ }

	string _name;
};

class Student : virtual public Person
{
public:
	Student(string name, string num)
		:Person(name)
		, _num(num)
	{ }
protected:
	string _num;
};

class Teacher : virtual public Person
{
public:
	Teacher(string name, string num)
		:Person(name)
		, _num(num)
	{
	}
protected:
	string _num;
};

class Assistant : public Student, public Teacher
{
public:
	Assistant(string name1, string name2, string name3)
		:Person(name3)
		, Student(name1, "1")
		, Teacher(name2, "2")
	{ }
protected:
	string _major;
};

int main()
{
	Assistant a("zhangsan", "lisi", "wangwu");
	cout << a._name << endl;

	return 0;
}